package com.ltkj.system.api.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.ltkj.common.core.annotation.Excel;
import com.ltkj.common.core.web.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

import java.util.Date;

/**
 * 酒店商户对象 shop_hotel
 *
 * @author xupf
 * @date 2023-09-03
 */
@ApiModel(value = "酒店商户DTO")
public class ShopHotelDTO extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 酒店商户id */
    @ApiModelProperty("酒店商户id")
    private Long id;

    /** 酒店商户名称 */
    @Excel(name = "酒店商户名称")
    @ApiModelProperty("酒店商户名称")
    private String name;

    /** 酒店商户类型 */
    @Excel(name = "酒店商户类型")
    @ApiModelProperty("酒店商户类型")
    private String type;

    /** 缩略图 */
    @Excel(name = "缩略图")
    @ApiModelProperty("缩略图")
    private String imgAbbrev;

    /** 推荐指数 */
    @Excel(name = "推荐指数")
    @ApiModelProperty("推荐指数")
    private String recValue;

    /** 开业时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "开业时间", width = 30, dateFormat = "yyyy-MM-dd")
    @ApiModelProperty("开业时间")
    private Date openDate;

    /** 装修时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "装修时间", width = 30, dateFormat = "yyyy-MM-dd")
    @ApiModelProperty("装修时间")
    private Date decoDate;

    /** 楼层 */
    @Excel(name = "楼层")
    @ApiModelProperty("楼层")
    private Long floorNum;

    /** 房间数量 */
    @Excel(name = "房间数量")
    @ApiModelProperty("房间数量")
    private Long roomNum;

    /** 服务电话 */
    @Excel(name = "服务电话")
    @ApiModelProperty("服务电话")
    private String phone;

    /** 酒店商户地址 */
    @Excel(name = "酒店商户地址")
    @ApiModelProperty("酒店商户地址")
    private String address;

    /** 坐标，经度 */
    @Excel(name = "坐标，经度")
    @ApiModelProperty("坐标，经度")
    private String longitude;

    /** 坐标，纬度 */
    @Excel(name = "坐标，纬度")
    @ApiModelProperty("坐标，纬度")
    private String latitude;

    /** 订房必读-入住方式 */
    @Excel(name = "订房必读-入住方式")
    @ApiModelProperty("订房必读-入住方式")
    private String checkInProcess;

    /** 订房必读-重要通告 */
    @Excel(name = "订房必读-重要通告")
    @ApiModelProperty("订房必读-重要通告")
    private String notice;

    /** 酒店详情 */
    @Excel(name = "酒店详情")
    @ApiModelProperty("酒店详情")
    private String content;

    /** 人均消费 */
    @Excel(name = "人均消费")
    @ApiModelProperty("人均消费")
    private String price;

    /** 状态（1营业中 2暂停营业） */
    @Excel(name = "状态", readConverterExp = "1=营业中,2=暂停营业")
    @ApiModelProperty("状态（1营业中 2暂停营业）")
    private String status;

    /** 亮点 */
    @Excel(name = "亮点")
    @ApiModelProperty("亮点")
    private String feature;

    /** 酒店政策-入住时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "酒店政策-入住时间", width = 30, dateFormat = "yyyy-MM-dd")
    @ApiModelProperty("酒店政策-入住时间")
    private Date checkInTime;

    /** 酒店政策-离店时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "酒店政策-离店时间", width = 30, dateFormat = "yyyy-MM-dd")
    @ApiModelProperty("酒店政策-离店时间")
    private Date checkOutTime;

    /** 酒店政策-接待人群 */
    @Excel(name = "酒店政策-接待人群")
    @ApiModelProperty("酒店政策-接待人群")
    private String receptionCrowd;

    /** 酒店政策-儿童 */
    @Excel(name = "酒店政策-儿童")
    @ApiModelProperty("酒店政策-儿童")
    private String isChildren;

    /** 酒店政策-加床 */
    @Excel(name = "酒店政策-加床")
    @ApiModelProperty("酒店政策-加床")
    private String extraBed;

    /** 酒店政策-洗漱用品 */
    @Excel(name = "酒店政策-洗漱用品")
    @ApiModelProperty("酒店政策-洗漱用品")
    private String toiletry;

    /** 设施服务-商务服务 */
    @Excel(name = "设施服务-商务服务")
    @ApiModelProperty("设施服务-商务服务")
    private String businessServices;

    /** 设施服务-交通服务 */
    @Excel(name = "设施服务-交通服务")
    @ApiModelProperty("设施服务-交通服务")
    private String jiocServieces;

    /** 设施服务-餐饮服务 */
    @Excel(name = "设施服务-餐饮服务")
    @ApiModelProperty("设施服务-餐饮服务")
    private String restaurantServices;

    /** 设施服务-通用设施 */
    @Excel(name = "设施服务-通用设施")
    @ApiModelProperty("设施服务-通用设施")
    private String publicServices;

    /** 酒店政策-宠物 */
    @Excel(name = "酒店政策-宠物")
    @ApiModelProperty("酒店政策-宠物")
    private String petReq;

    /** 酒店政策-支付方式-多选 */
    @Excel(name = "酒店政策-支付方式-多选")
    @ApiModelProperty("酒店政策-支付方式-多选")
    private String payMethods;

    /** 设施服务-前台服务 */
    @Excel(name = "设施服务-前台服务")
    @ApiModelProperty("设施服务-前台服务")
    private String receptionServices;

    /** 设施服务-康体服务 */
    @Excel(name = "设施服务-康体服务")
    @ApiModelProperty("设施服务-康体服务")
    private String healthServices;

    /** 逻辑删除 */
    @Excel(name = "逻辑删除")
    @ApiModelProperty("逻辑删除")
    private String isDel;

    public void setId(Long id)
    {
        this.id = id;
    }

    public Long getId()
    {
        return id;
    }
    public void setName(String name)
    {
        this.name = name;
    }

    public String getName()
    {
        return name;
    }
    public void setType(String type)
    {
        this.type = type;
    }

    public String getType()
    {
        return type;
    }
    public void setImgAbbrev(String imgAbbrev)
    {
        this.imgAbbrev = imgAbbrev;
    }

    public String getImgAbbrev()
    {
        return imgAbbrev;
    }
    public void setRecValue(String recValue)
    {
        this.recValue = recValue;
    }

    public String getRecValue()
    {
        return recValue;
    }
    public void setOpenDate(Date openDate)
    {
        this.openDate = openDate;
    }

    public Date getOpenDate()
    {
        return openDate;
    }
    public void setDecoDate(Date decoDate)
    {
        this.decoDate = decoDate;
    }

    public Date getDecoDate()
    {
        return decoDate;
    }
    public void setFloorNum(Long floorNum)
    {
        this.floorNum = floorNum;
    }

    public Long getFloorNum()
    {
        return floorNum;
    }
    public void setRoomNum(Long roomNum)
    {
        this.roomNum = roomNum;
    }

    public Long getRoomNum()
    {
        return roomNum;
    }
    public void setPhone(String phone)
    {
        this.phone = phone;
    }

    public String getPhone()
    {
        return phone;
    }
    public void setAddress(String address)
    {
        this.address = address;
    }

    public String getAddress()
    {
        return address;
    }
    public void setLongitude(String longitude)
    {
        this.longitude = longitude;
    }

    public String getLongitude()
    {
        return longitude;
    }
    public void setLatitude(String latitude)
    {
        this.latitude = latitude;
    }

    public String getLatitude()
    {
        return latitude;
    }
    public void setCheckInProcess(String checkInProcess)
    {
        this.checkInProcess = checkInProcess;
    }

    public String getCheckInProcess()
    {
        return checkInProcess;
    }
    public void setNotice(String notice)
    {
        this.notice = notice;
    }

    public String getNotice()
    {
        return notice;
    }
    public void setContent(String content)
    {
        this.content = content;
    }

    public String getContent()
    {
        return content;
    }
    public void setPrice(String price)
    {
        this.price = price;
    }

    public String getPrice()
    {
        return price;
    }
    public void setStatus(String status)
    {
        this.status = status;
    }

    public String getStatus()
    {
        return status;
    }
    public void setFeature(String feature)
    {
        this.feature = feature;
    }

    public String getFeature()
    {
        return feature;
    }
    public void setCheckInTime(Date checkInTime)
    {
        this.checkInTime = checkInTime;
    }

    public Date getCheckInTime()
    {
        return checkInTime;
    }
    public void setCheckOutTime(Date checkOutTime)
    {
        this.checkOutTime = checkOutTime;
    }

    public Date getCheckOutTime()
    {
        return checkOutTime;
    }
    public void setReceptionCrowd(String receptionCrowd)
    {
        this.receptionCrowd = receptionCrowd;
    }

    public String getReceptionCrowd()
    {
        return receptionCrowd;
    }
    public void setIsChildren(String isChildren)
    {
        this.isChildren = isChildren;
    }

    public String getIsChildren()
    {
        return isChildren;
    }
    public void setExtraBed(String extraBed)
    {
        this.extraBed = extraBed;
    }

    public String getExtraBed()
    {
        return extraBed;
    }
    public void setToiletry(String toiletry)
    {
        this.toiletry = toiletry;
    }

    public String getToiletry()
    {
        return toiletry;
    }
    public void setBusinessServices(String businessServices)
    {
        this.businessServices = businessServices;
    }

    public String getBusinessServices()
    {
        return businessServices;
    }
    public void setJiocServieces(String jiocServieces)
    {
        this.jiocServieces = jiocServieces;
    }

    public String getJiocServieces()
    {
        return jiocServieces;
    }
    public void setRestaurantServices(String restaurantServices)
    {
        this.restaurantServices = restaurantServices;
    }

    public String getRestaurantServices()
    {
        return restaurantServices;
    }
    public void setPublicServices(String publicServices)
    {
        this.publicServices = publicServices;
    }

    public String getPublicServices()
    {
        return publicServices;
    }
    public void setPetReq(String petReq)
    {
        this.petReq = petReq;
    }

    public String getPetReq()
    {
        return petReq;
    }
    public void setPayMethods(String payMethods)
    {
        this.payMethods = payMethods;
    }

    public String getPayMethods()
    {
        return payMethods;
    }
    public void setReceptionServices(String receptionServices)
    {
        this.receptionServices = receptionServices;
    }

    public String getReceptionServices()
    {
        return receptionServices;
    }
    public void setHealthServices(String healthServices)
    {
        this.healthServices = healthServices;
    }

    public String getHealthServices()
    {
        return healthServices;
    }
    public void setIsDel(String isDel)
    {
        this.isDel = isDel;
    }

    public String getIsDel()
    {
        return isDel;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
                .append("id", getId())
                .append("name", getName())
                .append("type", getType())
                .append("imgAbbrev", getImgAbbrev())
                .append("recValue", getRecValue())
                .append("openDate", getOpenDate())
                .append("decoDate", getDecoDate())
                .append("floorNum", getFloorNum())
                .append("roomNum", getRoomNum())
                .append("phone", getPhone())
                .append("address", getAddress())
                .append("longitude", getLongitude())
                .append("latitude", getLatitude())
                .append("checkInProcess", getCheckInProcess())
                .append("notice", getNotice())
                .append("content", getContent())
                .append("price", getPrice())
                .append("status", getStatus())
                .append("feature", getFeature())
                .append("checkInTime", getCheckInTime())
                .append("checkOutTime", getCheckOutTime())
                .append("receptionCrowd", getReceptionCrowd())
                .append("isChildren", getIsChildren())
                .append("extraBed", getExtraBed())
                .append("toiletry", getToiletry())
                .append("businessServices", getBusinessServices())
                .append("jiocServieces", getJiocServieces())
                .append("restaurantServices", getRestaurantServices())
                .append("publicServices", getPublicServices())
                .append("petReq", getPetReq())
                .append("payMethods", getPayMethods())
                .append("receptionServices", getReceptionServices())
                .append("healthServices", getHealthServices())
                .append("isDel", getIsDel())
                .append("createBy", getCreateBy())
                .append("createTime", getCreateTime())
                .append("updateBy", getUpdateBy())
                .append("updateTime", getUpdateTime())
                .toString();
    }
}
